import greenfoot.*;  // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
import java.awt.Color;
/**
 *clase del personaje principal mario
 *@JUAN FRANCISCO ARIAS BETANCOURT
 */
public class Mario extends Heroe
{

   
    private GreenfootImage[] imagen;

     
    public Mario(boolean mov)
    {
        super(mov);
       imagen = new GreenfootImage[10];
        imagen[0] = new GreenfootImage("mario.png");
        imagen[1] = new GreenfootImage("marioL.png");
        imagen[2] = new GreenfootImage("mariolanR.png");
        imagen[3] = new GreenfootImage("mariolanL.png");
        imagen[4] = new GreenfootImage("mariocaR.png");
        imagen[5] = new GreenfootImage("mariocaL.png");
        imagen[6] = new GreenfootImage("mariosaR.png");
        imagen[7] = new GreenfootImage("mariosaL.png");
        imagen[8]=new GreenfootImage("mariog.png");
    }
    /**
     * se asigna los valores alas variables de intancia de la clase mario
     * 
     */
    public Mario() 
    {
        
         super(true);
       imagen = new GreenfootImage[10];
        imagen[0] = new GreenfootImage("mario.png");
        imagen[1] = new GreenfootImage("marioL.png");
        imagen[2] = new GreenfootImage("mariolanR.png");
        imagen[3] = new GreenfootImage("mariolanL.png");
        imagen[4] = new GreenfootImage("mariocaR.png");
        imagen[5] = new GreenfootImage("mariocaL.png");
        imagen[6] = new GreenfootImage("mariosaL.png");
        imagen[7] = new GreenfootImage("mariosaR.png");
        imagen[8]=new GreenfootImage("mariog.png");
    }

    /**
     * 
     */
    public void act() 
    {
         World mundo=getWorld();
        if(getmover())
        {
        mover(imagen);
        if(Greenfoot.isKeyDown("space")&&getMartillo()==0)
        {   
          lanzamartillo();
           martincrem();
        }
        if(getMartillo()!=0)
            martincrem();
        
        if(getMartillo()==15)
            martilloreset();
       
        if(getY()==599)
            setLocation( 53, 508);
        }
        
        if(getvidas()==0)
        pierdes();
    
     if(checaclick())
        {
             java.util.List listama = mundo.getObjects(Luigi.class);
        if(!listama.isEmpty()){
            Object obj = listama.get(0);
            Actor mario = (Actor)obj;
            (getWorld()).removeObject(mario);
        }
    }  
}
 
    

    /*****
     * en este metodo se lanza el martillo
     */
    public void lanzamartillo()
    {
        World mundo;
        mundo=super.getWorld();

      if(getdir()==2)
            setImage(imagen[2]);
        else
            setImage(imagen[3]);
        Actor mar=new Martillo(getX()+5,getY()+10,getdir(),getdistmarti());
        mundo.addObject(mar, getX(), getY());
        resetcam();
    }

   
}